草庐IT

xcode - 检测碰撞 SpriteKit Swift

全部标签

C++内存泄漏检测方法

我正在开发一个在Windows上使用许多外部库的项目。我遇到了内存泄漏问题:我通过重写operatornew/new[]和delete/delete[]检测到了很多内存泄漏。问题是我知道有多少内存块泄漏了,但不知道在哪里可以找到它们,在重写的函数中,我可以记录分配的内存块的大小和位置,而没有堆栈跟踪。所以为了处理它,我想我也需要记录堆栈跟踪(但是怎么做?),或者有什么方法可以找到导致内存泄漏的代码?非常感谢您的帮助。 最佳答案 我使用以下方法为new提供有关分配每个内存块的文件和行的信息:voidoperatordelete(voi

java - 可以使用 "SC query"检测禁用的 Windows 服务吗?

我有一个Windows服务(用Java编写)需要在某些情况下启动其他Windows服务。我通过简单地向命令行输出“sc”命令来做到这一点。如果我尝试启动的windows服务被禁用,显然启动会失败。我想事先确定这一点,而不是费心尝试启动它。但是,如果“disabled”状态在“scquery”命令中的某处,我还没有找到它。有什么方法可以检测Java中是否禁用了Windows服务,最好是通过命令行?谢谢! 最佳答案 查询配置选项告诉您服务的启动类型:C:\Users\snoone>scqcvmtools[SC]QueryServiceC

c - 检测 Windows 中的总 RAM 变化

如果系统RAM总量发生变化,Windows中是否有回调通知我的应用程序? 最佳答案 如果您可以获取_InstanceCreationEvent,您也许可以通过WMI执行此操作和_InstanceDeletionEvent上课Win32_PhysicalMemory.有示例代码here(WMI不适合在C或C++中使用,抱歉-C#会更容易)。只需在此处使用Win32_PhysicalMemory而不是Win32_Process使您监听的查询:hres=pSvc->ExecNotificationQueryAsync(_bstr_t("W

c++ - 检测非标准滚动条

有没有办法用WinAPI检测窗口是否有非标准滚动条(例如,窗口可以自己绘制滚动条而不是使用标准滚动条)? 最佳答案 我不太确定这是否可行,但这只是一个想法。滚动条属于必须在启用此样式的情况下创建的窗口。因此,您可以检查您的窗口是否包含WS_VSCROLL样式,如果是-这是标准滚动条。相反,它是由其他人绘制的。可以这样查看://AssumethatawindowhandlehWndisknownintstyle=GetWindowLong(hWnd,GWL_STYLE);BOOLbStandard=((style&WS_VSCROLL

C#检测所有窗口中的按键事件

嘿,我的键事件处理程序有问题。这是来源:usingSystem;usingSystem.Collections.Generic;usingSystem.ComponentModel;usingSystem.Data;usingSystem.Drawing;usingSystem.Linq;usingSystem.Text;usingSystem.Windows.Forms;usingSystem.Diagnostics;usingSystem.Threading;namespaceWindowsFormsApplication3{publicpartialclassForm1:Form

c++ - 如何检测自动NT服务是否会启动

我正在使用一个应用程序开发一个简单的NT服务,该应用程序将监视它并在任务栏中显示状态。在启动监视器时检查服务是否正在运行,如果没有则提示启动它。这很好,直到重新启动时监视器在服务之前启动并提示启动它,即使它会自动启动。通过阅读文档,我认为状态将报告为SERVICE_START_PENDING,这是服务在进入服务主函数时所做的第一件事,但状态似乎报告为SERVICE_STOPPED如果SCM尚未开始启动服务。有什么方法可以检测到服务将很快开始吗?谢谢,J 最佳答案 我认为没有任何方法可以预测服务控制管理器将来会做什么。但是,我可以想到

java - 检测何时由于名称中的错误字符而无法创建文件

谁能告诉我如何处理java中的非法文件名?当我在Windows上运行以下命令时:Filebadname=newFile("C:\\Temp\\a:b");System.out.println(badname.getAbsolutePath()+"length="+badname.length());FileWriterw=newFileWriter(badname);w.write("helloworld");w.close();System.out.println(badname.getAbsolutePath()+"length="+badname.length());输出显示文件

c# - 检测 HWND 可见性变化

有没有办法注册一个处理程序,以便在我的应用程序的窗口根据操作系统(或其他任何人)更改可见性时收到通知,直接通过带有SW_HIDE的ShowWindow()等访问HWND? 最佳答案 假设您的应用程序是基于WinForms的。是的,这应该可以通过覆盖主Form的WndProc来实现。请参阅WndProcMSDNdocumentation了解详情。 关于c#-检测HWND可见性变化,我们在StackOverflow上找到一个类似的问题: https://stack

windows - 使用 NamedPipe 时,有什么方法可以检测客户端管道的句柄是否关闭?

我想知道是否有一种方法可以在Windows平台上从服务器端检测客户端管道句柄的状态。即使客户端使用CloseHandle()函数关闭了管道(断开连接),但似乎无法从服务器端检测到它。将WaitForSingleObject()与句柄对象一起使用会返回WAIT_OBJECT_0,无论客户端句柄的状态如何。那么,从服务器端以更低的成本检测客户端管道的句柄是否关闭的好的解决方案是什么? 最佳答案 如果您正在从管道(PIPE_ACCESS_INBOUND或PIPE_ACCESS_DUPLEX)读取数据,当客户端关闭其管道末端时,您将收到ER

windows - 有没有办法检测 Windows 操作系统是服务器 (2003/2008) 还是工作站 (XP/Vista/Win7)?

我想知道WinApi检测Windows操作系统是服务器(2003/2008)还是工作站(XP/Vista/Win7)? 最佳答案 调用GetVersionEx得到OSVERSIONINFOEX信息并测试wProductType。 关于windows-有没有办法检测Windows操作系统是服务器(2003/2008)还是工作站(XP/Vista/Win7)?,我们在StackOverflow上找到一个类似的问题: https://stackoverflow.co